mysql5.5主从服务配置
服务器 ubuntu 14.04LTS
2台mysql服务器 192.168.11.25 192.168.9.32
mysql 版本5.5.22
主服务器 192.168.11.25
导出要同步的数据库
mysqldump -u root -p easy_drive > /home/easy_drive.sql #在MySQL主服务器进行操作,导出数据库osyunweidb到/home/oeasy_drive.sql
#vi /etc/mysql/my.cnf
[mysqld]
log-bin=mysql-bin //[必须]启用二进制日志
server-id=25 //[必须]服务器唯一ID,默认是1,一般取IP最后一段
binlog-do-db=easy_drive //需要同步的数据库,如果是多个库,则为多行
binlog-ignore-db=mysql //不需要同步的数据库
service mysqld restart #重启MySQL
mysql>GRANT REPLICATION SLAVE ON . to ‘mysync’@’%’ identified by ‘q123456’; //一般不用root帐号,“%”表示所有客户端都可能连,只要帐号,密码正确,此处可用具体客户端IP代替,如192.168.145.226,加强安全。
mysql>flush privileges; #刷新系统授权表
mysql> show master status;
+——————+———-+—————————-+——————+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+——————+———-+—————————-+——————+
| mysql-bin.000005 | 61426 | easy_drive,easy_drive_stat | mysql |
+——————+———-+—————————-+——————+
1 row in set (0.00 sec)
注:执行完此步骤后不要再操作主服务器MYSQL,防止主服务器状态值变化
从服务器 192.168.9.32
导入数据到数据库
mysql>source /home/carbit-fu/win7Share/easy_drive_stat.sql;
#vi /etc/mysql/my.cnf
[mysqld]
log-bin=mysql-bin //[必须]启用二进制日志
server-id=35 //[必须]服务器唯一ID,默认是1,一般取IP最后一段
binlog-do-db=easy_drive //需要同步的数据库,如果是多个库,则为多行
binlog-ignore-db=mysql //不需要同步的数据库
service mysqld restart #重启MySQL
mysql>change master to master_host='192.168.11.25',master_user='mysync',master_password='q123456',master_log_file='mysql-bin.000005',master_log_pos=61426;
mysql>start slave; //启动从服务器复制功能
mysql>slave start; #开启slave同步进程
mysql>SHOW SLAVE STATUS\G #查看slave同步信息,出现以下内容
*************************** 1. row ***************************
Slave_IO_State: Waiting for master to send event
Master_Host: 192.168.21.169
Master_User: osyunweidbbak
Master_Port: 3306
Connect_Retry: 60
Master_Log_File: mysql-bin.000019
Read_Master_Log_Pos: 7131
Relay_Log_File: MySQLSlave-relay-bin.000002
Relay_Log_Pos: 253
Relay_Master_Log_File: mysql-bin.000019
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
Replicate_Do_DB: osyunweidb
Replicate_Ignore_DB: mysql
Replicate_Do_Table:
Replicate_Ignore_Table:
1 row in set (0.00 sec)
注意查看:
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
以上这两个参数的值为Yes,即说明配置成功!
常见错误
一
Slave_IO_Running: NO
Slave_SQL_Running: Yes
Last_IO_Error: Got fatal error 1236 from master when reading data from binary log: ‘Could not find first log file name in binary log index file’
解决办法:
从机器停止slave
mysql> slave stop;
到master机器登陆mysql:
记录master的bin的位置,例如:mysql> show mster status;
+——————-+———-+————–+——————————————-+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+——————-+———-+————–+——————————————-+
| mysqld-bin.000011 | 106 | | information_schema,mysql |
+——————-+———-+————–+——————————————-+
马上到slave执行
mysql> CHANGE MASTER TO MASTER_LOG_FILE=’mysqld-bin.000011’,MASTER_LOG_POS=106;
mysql> slave start;
mysql> show slave status\G;
二
Slave_IO_Running: YES
Slave_SQL_Running: NO
并报出,有重复记录,无法插入的提示信息
解决这个问题,也有两个办法,一是在my.cnf里加
slave-skip-errors=1062
二是,直接执行
SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1;
跳过一步,不作同步,根据情况可以设置多步。
Linux下配置MySQL主从复制:
Ubuntu 14.04下搭建MySQL主从服务器:
Linux下MySQL互为主从配置:
相关热词:
本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供用于网络技术学习参考,学习中请遵循相关法律法规!
本文地址: https://v30.fanwenzhu.com/server/sql/11534.shtml
相关文章
热门TAG
win10 ecshop 主机 阿里云 解决 配置 C# C++ 解析 SQL语句 命令 Go语言 方法 CSS3 HTML5 CSS win7 MSSQL 服务器配置 IIS7.5 IIS7 IIS6 IIS CentOS 7 Linux oracle数据库 oracle phpcms discuz discuz教程最新文章
-
因为之前遇到过不能保存
时间:2021-01-20
-
centos下输入呼吁不能有中
时间:2021-01-20
-
如下: #chkconfig --list 实际
时间:2021-01-20
-
qtbase、plugins、sqldrivers、
时间:2021-01-20
-
围绕着内存数据库的4个流
时间:2021-01-06
-
MySQL NoSQL–Memcached插件
时间:2021-01-06
-
MySQL安装启动时报错一则
时间:2020-12-29
-
mysql5.7.12 utf-8字符编码问题
时间:2020-12-29
热门文章
-
如何下载旧版本的MySQL
时间:2020-12-22
-
MySQL NoSQL–Memcached插件
时间:2021-01-06
-
MySQL安装启动时报错一则
时间:2020-12-29
-
完美解决servlet传数据到绿色版的mySQL的汉
时间:2020-12-28
-
Neo4j和图数据库起步
时间:2020-12-22
-
Linux Centos7下如何确认MySQL服务已经启动
时间:2020-12-22
-
解决数据库保存中文数据后变'???'
时间:2020-12-22
-
centos下输入命令不能有中文那么我怎么插
时间:2020-12-22
-
为初学者准备的MariaDB管理命令
时间:2020-12-22
-
解决"MySQL server PID file could not be found"问
时间:2020-12-22
